#include <QtTest/QtTest>
#include "readsolomontest.h"
#include "bytematrixtest.h"
#include "encodernctest.h"
#include "detectortest.h"
#include "decodertest.h"

//#include <QtCore/QString>
//class MainTest : public QObject
//{
//    Q_OBJECT
    
//public:
//    MainTest();
    
//private Q_SLOTS:
//    void initTestCase();
//    void cleanupTestCase();
//    void testCase1();
//    void testCase1_data();
//};

//MainTest::MainTest()
//{
//}

//void MainTest::initTestCase()
//{
//}

//void MainTest::cleanupTestCase()
//{
//}

//void MainTest::testCase1()
//{
//    QFETCH(QString, data);
//    QVERIFY2(true, "Failure");
//}

//void MainTest::testCase1_data()
//{
//    QTest::addColumn<QString>("data");
//    QTest::newRow("0") << QString();
//}

//QTEST_APPLESS_MAIN(MainTest)

//#include "tst_maintest.moc"

int main(int argc, char** argv)
{
    int ret = 0;

    ReadSolomonTest rst;
    ret += QTest::qExec(&rst, argc, argv);

    ByteMatrixTest bmt;
    ret += QTest::qExec(&bmt, argc, argv);

    EncoderNCTest enct;
    ret += QTest::qExec(&enct, argc, argv);

    DetectorTest dt;
    ret += QTest::qExec(&dt, argc, argv);

    DecoderTest dect;
    ret += QTest::qExec(&dect, argc, argv);

    return ret;
}

